public class Pessoa 
{
	private String nome;
	private int idade,u;
	private char sexo;
	private Pessoa mae;
	private Pessoa pai;
	private Pessoa conjuge;
	private Pessoa[] filhos;
	private int i,j;
	public void setNome(String nome)
	{
		this.nome=nome;
	}
	public String getNome()
	{
		return nome;
	}
	public void setIdade(int n)
	{
		if(n>0)
		{
			idade=n;
		}
		else
		{
			idade=10;
		}
	}
	public int getIdade()
	{
		return idade;
	}
	public void setSexo(char sexo)
	{
		this.sexo=sexo;
	}
	public char getSexo()
	{
		return sexo;
	}
	public void setMae(Pessoa mae)
	{
		this.mae=mae;
	}
	public Pessoa getMae()
	{
		return mae;
	}
	public void setPai(Pessoa pai)
	{
		this.pai=pai;
	}
	public Pessoa getPai()
	{
		return pai;
	}
	public void setConjuge(Pessoa conjuge)
	{
		this.conjuge=conjuge;
	}
	public Pessoa getConjuge()
	{
		return conjuge;
	}
	public void casar(Pessoa x)
	{
		if(conjuge==null&&x.getConjuge()==null&&sexo!=x.getSexo()&&idade>18&&x.getIdade()>18)
		{
			conjuge=x;
			x.setConjuge(this);
		}
	}
	public Pessoa()
	{
		filhos=new Pessoa[10];
		i=0;
	}
	public void addFilhos(Pessoa p)
	{
		filhos[i]=p;
		i++;
		if(sexo=='M')
		{
			p.setPai(this);
		}
		else
		{
			p.setMae(this);
		}
	}
	public Pessoa []getFilhos()
	{
		return filhos;
	}
	public void mostrarIrmaos()
	{
		if(this.pai!=null)
		{
			Pessoa []a=this.pai.getFilhos();
			for(j=0;a[j]!=null;j++)
			{
				if(this!=a[j])
				{
					System.out.println("irmao("+this.getNome()+")->"+a[j].getNome());
				}
			}
		}
	}
	public void mostrarNetos()
	{
		Pessoa []b=this.getFilhos();
		for(i=0;b[i]!=null;i++)
		{
			Pessoa []c=b[i].getFilhos();
			for(j=0;c[j]!=null;j++)
			{
				System.out.println("neto("+this.getNome()+")->"+c[j].getNome());
			}
		}
	}
	public void mostrarTios()
	{
		if(this.pai.pai!=null)
		{
			Pessoa []z=this.pai.pai.getFilhos();
			for(u=0;z[u]!=null;u++)
			{
				if(z[u]!=this.pai)
				{
					System.out.println("tio("+this.getNome()+")->"+z[u].getNome());
				}
			}
				this.pai.mostrarIrmaos();
		}
	}
	public void mostrarPrimos()
	{
		if(this.pai.pai!=null)
		{
			Pessoa []d=this.pai.pai.getFilhos();
			for(i=0;d[i]!=null;i++)
			{
				if(this.pai!=d[i])
				{
					Pessoa []e=d[i].getFilhos();
					for(j=0;e[j]!=null;j++)
					{
						System.out.println("primo("+this.getNome()+")->"+e[j].getNome());
					}
				}
			}
		}
	}
}
